import { withProps } from './with-props';
import { BiZSelect } from '@ey-component/components';
// import { BIZTreeSelect } from '@ey-component/components';
import { BIZTreeSelect } from '@/biz-components/tree-select';
import Date from '@/biz-components/date';
import TableRender from '@/biz-components/table-render';
import TableModals from '@/biz-components/table-modals';
import { BillInput } from '@ey-component/components';
import PackageSearch from '@/biz-components/package-input';
import {
  FormLayout,
  FormGrid,
  // NumberPicker,
  Password,
  // ArrayTable,
  Switch,
} from '@formily/antd';

import FormItem from '@/biz-components/form-item';

import { FieldGroup } from '../components/field-item-group/field-item-group';
import { SelectTable } from '@ey-component/components';
// import SelectTable from "@/biz-components/select-table";
import { AsyncTreeSelect } from '@ey-component/components';
// import { ArrayTable } from '@/packages/components';
import { ArrayTable } from '@ey-component/components';
import ViewTable from '@/biz-components/hoc-form/with-table';
import SelectIcon from '@/biz-components/select-icons';
import EditTable from '@/biz-components/edit-table';
import OrgEmpSelect from '@/biz-components/org-emp-select';
import { CustomRadio } from '@ey-component/components';
import RuleConfig from '@/biz-components/rule-condition-config';
import TREE_SELECT_MUL from '@/biz-components/job-tree-select';
import RemoteSelect from '@/biz-components/remote-select';
import RemoteSelectLabel from '@/biz-components/remote-select-label';
import { CustomCheckbox } from '@ey-component/components';
import ArrayCollapse from '@/biz-components/array-collapse';
import { ArrayCards } from '@ey-component/components';
import ArrayTabs from '@/biz-components/array-tabs';

import NumberPicker from '@/biz-components/number-picker';
import NumberRange from '@/biz-components/number-range';
import BizEmModalSingle from '@/biz-components/single-ep-modal';
import DisplayInput from '@/biz-components/display-input';
import BiZAutoComplete from '@/biz-components/auto-complete';
import CurrencyNumber from '@/biz-components/currency-number';
import DisplayDetailValue from '@/biz-components/display_detail_value';
import { TransformTreeSelect } from '@ey-component/components';
import BtnWrap from '@/biz-components/btn-wrap';
import EditableTagGroup from '@/biz-components/editable-tag-group';
import SelectionTable from '@/biz-components/selection-table';
import FormTag from '@/biz-components/form-tag';
import Table from '@/biz-components/array-table';
import ArrayTableDrawer from '@/biz-components/array-table-drawer';
import {ClaimItems} from "@/biz-components/claim-items";
import SelectCityModal from "@/biz-components/select-city-modal";
import SelectExcelModal from "@/biz-components/select-excel-modal";
import SearchTreeModal from '@/biz-components/search-tree-modal';
import DynamicLink from '@/biz-components/dynamic-link';
import InnerOrder from "@/biz-components/inner-order";

import InputSearchAdd from "@/biz-components/input-search-add";
import BtnGroup from "@/biz-components/btn-group";
import ArrayTableSelection from '@/biz-components/array-table/ant-array-table';
import PopoverItem from '@/biz-components/popover';
import PopoverItemLabel from '@/biz-components/popover-label';
import TaxItemRate from '@/biz-components/tax-item-rate';
// import OfflineTable from "@/biz-components/offline-table";
import { ScanInput } from '@/biz-components/array-table-drawer/scan-input';
import Link from "@/biz-components/link";
import SLICE_FILE_UPLOAD from '@/biz-components/slice-file-upload';

/**
 * 统一注册组件
 * 命名规范请XXX_XXX 大写
 */
const components = {
  // 目前未启用的组件
  // TEXTAREA: Input.TextArea,
  // UPLOAD_V1: Uploader, 查询后未使用
  // DATE: Date,
  // DATE_RANGE: Date,
  // DATE_FORMAT: Date,
  // SELECT_REMOTE_CODE: BiZSelect,
  // SELECT_DATA: BiZSelect,
  // INPUT_MODAL: InputModal,
  ARRAY_TABLE: Table,
  // OFFLINETABLE: OfflineTable,
  SELECT: BiZSelect,
  ARRAY_COLLAPSE: ArrayCollapse,
  ARRAY_CARDS: ArrayCards,
  INPUT: BillInput,
  SWITCH: Switch,
  BTNWRAP: BtnWrap,
  FormGrid,
  FormLayout,
  FormItem,
  FieldGroup,
  DATE_V1: Date,
  BIZ_SELECT: BiZSelect,
  BIZ_TREE_SELECT: BIZTreeSelect,
  WITH_EDIT_TABLE: EditTable,
  NUMBER: NumberPicker,
  CHECK_BOX: CustomCheckbox,
  INPUT_TEXTAREA: BillInput.TextArea,
  TABLE_RENDER: TableRender,
  OrgEmpSelect: OrgEmpSelect,
  PASSWORD: Password,
  ROLE_TREE_SELECT: AsyncTreeSelect,
  TABLE_MODALS: TableModals,
  VIEW_TABLE: ViewTable,
  ArrayTable: ArrayTable,
  SELECT_TABLE: SelectTable,
  SELECT_ICON: SelectIcon,
  RADIO: CustomRadio,
  RULE_CONDITION: RuleConfig,
  TREE_SELECT_MUL,
  REMOTE_SELECT: RemoteSelect,
  REMOTE_SELECT_LABEL: RemoteSelectLabel,
  NUMBER_RANGE: NumberRange,
  BIZ_EMP_MODAL_SINGLE: BizEmModalSingle,

  DISPLAY_INPUT: DisplayInput,
  BIZ_AUTO_COMPLETE: BiZAutoComplete,
  CURRENCY_NUMBER: CurrencyNumber,
  DISPLAY_DETAIL_VALUE: DisplayDetailValue,
  TRANSFORM_TREE_SELECT: TransformTreeSelect,
  EDITABLE_TAG_GROUP: EditableTagGroup,
  SELECTION_TABLE: SelectionTable,
  ARRAYTABS: ArrayTabs,
  FORM_TAG: FormTag,
  ARRAY_TABLE_DRAWER: ArrayTableDrawer,
  CLAIM_ITEMS: ClaimItems,
  SELECT_CITY_MODAL: SelectCityModal,
  SELECT_EXCEL_MODAL: SelectExcelModal,
  SEARCH_TREE_MODAL: SearchTreeModal,
  PACKAGE_INFO: PackageSearch,
  DYNAMIC_LINK: DynamicLink,
  InnerOrder,
  InputSearchAdd,
  BtnGroup,
  ArrayTable_SELECTION: ArrayTableSelection,
  POPOVER_ITEM:PopoverItem,
  POPOVER_ITEM_LABEL:PopoverItemLabel,
  TAX_ITEM_RATE:TaxItemRate,
  ScanInput,
  LINK: Link, // 跳转链接
  SLICE_FILE_UPLOAD,
};

export default withProps(components);
